﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;

namespace FoxCommerce.MVC.Domain.Entities
{
    public partial class Order
    {
        [Required, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public int ID { get; set; }
        public int CustomerID { get; set; }
        [ForeignKey("CustomerID")]
        public virtual Customer Customer { get; set; }

        public int CustomerLanguageID { get; set; }
        public Guid OrderGUID { get; set; }
        public string CustomerIP { get; set; }
        public decimal OrderTotal { get; set; }
        public decimal OrderDiscount { get; set; }

        public int OrderStatusID { get; set; }//Core.Enums.OrderStatus

        public int CreditCardID { get; set; }
        [ForeignKey("CreditCardID")]
        public virtual CreditCard CreditCard { get; set; }

        public int PaymentMethodID { get; set; }
        [ForeignKey("paymentMethodID")]
        public virtual PaymentMethod PaymentMethod { get; set; }

        public int ShippingID { get; set; }//todo
        public int BillingID { get; set; }//todo
        public int TrackingNumber { get; set; }
        public bool Deleted { get; set; }

        [DataType(DataType.DateTime)]
        public DateTime CreatedOn { get; set; }

        [DataType(DataType.DateTime)]
        public DateTime PaidDate { get; set; }

        public int PaymentStatusID { get; set; }//Core.Enums.PaymentStatus

        public string CustomerCurrencyCode { get; set; }
        public decimal OrderTotalInCustomer { get; set; }
        public decimal OrderDiscountInCusto { get; set; }
    }
}